<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.elwiki.preferences.ui" xmlns="http://www.w3.org/2001/XMLSchema">
<annotation>
      <appinfo>
         <meta.schema plugin="org.elwiki.preferences.ui" id="preferencePages" name="Preference Pages"/>
      </appinfo>
      <documentation>
         Elwiki provides web-page for preferences.
The purpose of this extension point is to allow plug-ins to add
pages to the preference dialog box. When preferences page is opened
(initiated from the menu bar), pages contributed in
this way will be added to the dialog box. 

&lt;p&gt;
The preferences page provides for hierarchical grouping of the pages. For this
reason, a page can optionally specify a &lt;samp&gt;category&lt;/samp&gt; attribute.
This attribute represents a path composed of parent page IDs separated
by &apos;/&apos;. If this attribute is omitted or if any of the parent
nodes in the path cannot be found, the page will be added at
the root level.
&lt;/p&gt;
      </documentation>
   </annotation>

   <element name="extension">
      <annotation>
         <appinfo>
            <meta.element />
         </appinfo>
      </annotation>
      <complexType>
         <sequence>
            <element ref="page" minOccurs="0" maxOccurs="unbounded"/>
         </sequence>
         <attribute name="point" type="string" use="required">
            <annotation>
               <documentation>
                  a fully qualified identifier of the target extension point
               </documentation>
            </annotation>
         </attribute>
         <attribute name="id" type="string">
            <annotation>
               <documentation>
                  an optional identifier of the extension instance
               </documentation>
            </annotation>
         </attribute>
         <attribute name="name" type="string">
            <annotation>
               <documentation>
                  an optional name of the extension instance
               </documentation>
               <appinfo>
                  <meta.attribute translatable="true"/>
               </appinfo>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="page">
      <annotation>
         <appinfo>
            <meta.element labelAttribute="name"/>
         </appinfo>
      </annotation>
      <complexType>
         <sequence>
            <element ref="keywordReference" minOccurs="0" maxOccurs="unbounded"/>
         </sequence>
         <attribute name="id" type="string" use="required">
            <annotation>
               <documentation>
                  a unique name that will be used to identify this page.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="name" type="string" use="required">
            <annotation>
               <documentation>
                  a translatable name that will be used in the UI for this page.
               </documentation>
               <appinfo>
                  <meta.attribute translatable="true"/>
               </appinfo>
            </annotation>
         </attribute>
         <attribute name="class" type="string" use="required">
            <annotation>
               <documentation>
                  a name of the fully qualified class that implements 
&lt;samp&gt;org.elwiki.preferences.ui.IWikiPreferencePage&lt;/samp&gt;.
               </documentation>
               <appinfo>
                  <meta.attribute kind="java" basedOn="org.eclipse.jface.preference.PreferencePage:org.elwiki.preferences.ui.IWikiPreferencePage"/>
               </appinfo>
            </annotation>
         </attribute>
         <attribute name="category" type="string">
            <annotation>
               <documentation>
                  a path indicating the location of the page in the preference tree. The path may either be a parent node ID or a sequence
     of IDs separated by &apos;/&apos;, representing the full path from the root node.
               </documentation>
               <appinfo>
                  <meta.attribute kind="identifier" basedOn="org.eclipse.ui.preferencePages/page/@id"/>
               </appinfo>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="keywordReference">
      <annotation>
         <documentation>
            A reference by a preference page to a keyword. See the keywords extension point.
         </documentation>
      </annotation>
      <complexType>
         <attribute name="id" type="string" use="required">
            <annotation>
               <documentation>
                  The id of the keyword being referred to.
               </documentation>
               <appinfo>
                  <meta.attribute kind="identifier" basedOn="org.eclipse.ui.keywords/keyword/@id"/>
               </appinfo>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <annotation>
      <appinfo>
         <meta.section type="since"/>
      </appinfo>
      <documentation>
         [Enter the first release in which this extension point appears.]
      </documentation>
   </annotation>

   <annotation>
      <appinfo>
         <meta.section type="examples"/>
      </appinfo>
      <documentation>
         The following is an example for the preference extension point: 
&lt;p&gt;
&lt;pre&gt;
   &lt;extension 
       point=&quot;org.eclipse.ui.preferencePages&quot;&gt; 
      &lt;page 
         id=&quot;com.xyz.prefpage1&quot; 
         name=&quot;XYZ&quot; 
         class=&quot;com.xyz.prefpages.PrefPage1&quot;&gt; 
         &lt;keywordReference id=&quot;xyz.Keyword&quot;/&gt;
      &lt;/page&gt; 
      &lt;page 
         id=&quot;com.xyz.prefpage2&quot; 
         name=&quot;Keyboard Settings&quot; 
         class=&quot;com.xyz.prefpages.PrefPage2&quot; 
         category=&quot;com.xyz.prefpage1&quot;&gt; 
      &lt;/page&gt; 
   &lt;/extension&gt; 
&lt;/pre&gt;
&lt;/p&gt;
      </documentation>
   </annotation>

   <annotation>
      <appinfo>
         <meta.section type="apiinfo"/>
      </appinfo>
      <documentation>
         The value of the attribute class must represent a fully qualified name of the class that implements
&lt;samp&gt;org.eclipse.ui.IWorkbenchPreferencePage&lt;/samp&gt;.
      </documentation>
   </annotation>

   <annotation>
      <appinfo>
         <meta.section type="implementation"/>
      </appinfo>
      <documentation>
         Any manager adds several pages for setting the preferences of the ElWiki. Pages registered
through this extension will be added after them according to their category information.
      </documentation>
   </annotation>

   <annotation>
      <appinfo>
         <meta.section type="copyright"/>
      </appinfo>
      <documentation>
         [Here notes about copyright.]
      </documentation>
   </annotation>

</schema>
